package deviceResponse

import (
	time2 "hc_server/pkg/time"
)

// GetDeviceListResponse 获取device设备列表
type GetDeviceListResponse struct {
	ID     string          `json:"id"`
	Name   string          `json:"name"`
	Status string          `json:"status"`
	No     string          `json:"no"`
	Time   time2.LocalTime `json:"time"`
}

// GetDeviceModelInfoListResponse 获取device设备型号列表
type GetDeviceModelInfoListResponse struct {
	DeviceModelId  string `json:"device_model_id"` //设备类型id
	Icon           string `json:"icon"`
	BindingCount   string `json:"binding_count"`   //已绑定数量
	UnbindingCount string `json:"unbinding_count"` //未绑定数量
	AllocateCount  string `json:"allocate_count"`  //可划拨数量
	RecallCount    string `json:"recall_count"`    //可召回数量
}

// GetDeviceInfoListResponse 获取device设备详情列表
type GetDeviceInfoListResponse struct {
	Id            string          `json:"id"`
	Sn            string          `json:"sn"`
	StockStatus   string          `json:"stock_status"`   //库存状态：0=待出库 1=已出库
	BindingStatus string          `json:"binding_status"` //绑定状态：0=未绑定 1=已绑定
	AgentName     string          `json:"agent_name"`     //直属下级
	MerchantName  string          `json:"merchant_name"`  //所属商户
	BindingTime   time2.LocalTime `json:"binding_time"`   //绑定时间
}

// GetDeviceInfoResponse 获取device设备详情
type GetDeviceInfoResponse struct {
	Id            string           `json:"id"`
	Icon          string           `json:"icon"`
	PaymentCode   string           `json:"payment_code"`    //收款码编号
	Iccid         string           `json:"iccid"`           //
	DeviceType    string           `json:"device_type"`     //设备类型
	DeviceSn      string           `json:"device_sn"`       //sn
	DeviceNo      string           `json:"device_no"`       //设备型号
	DeviceTUSN    string           `json:"device_tusn"`     //tusn
	StockStatus   string           `json:"stock_status"`    //库存状态：0=待出库 1=已出库
	DeliveryTime  *time2.LocalTime `json:"delivery_time"`   //出库时间
	BindingStatus string           `json:"binding_status"`  //绑定状态：0=未绑定 1=已绑定
	BindingTime   *time2.LocalTime `json:"binding_time"`    //绑定时间
	AgentName     string           `json:"agent_name"`      //直属下级
	AgentNo       string           `json:"agent_no"`        //直属下级代理商编号
	BaseAgentName string           `json:"base_agent_name"` //所属代理商
	BaseAgentNo   string           `json:"base_agent_no"`   //所属代理商编号
	MerchantName  string           `json:"merchant_name"`   //所属商户
	MerchantNo    string           `json:"merchant_no"`     //所属商户编号
}

// GetDeviceAllocateInfoListResponse 获取可划拨设备列表
type GetDeviceAllocateInfoListResponse struct {
	Id   int    `json:"id"`
	Sn   string `json:"sn"`
	Tusn string `json:"tusn"`
	Code string `json:"codeService"` //收款码
}

// GetDeviceRecallInfoListResponse 获取可召回设备列表
type GetDeviceRecallInfoListResponse struct {
	AgentName   string `json:"agent_name"`
	AgentNo     string `json:"agent_no"`
	DeviceCount string `json:"device_count"` //设备数量
}
